The x and y coordinates were both adjusted to be page relative, even
though the icon grid can only scroll in one direction. This was leading
to coordinates outside of the icon grid to be considered part of it and
a wrong drop target to be chosen.
Fixes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3779
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1767>
page = swap(page, this._pages.length);
// Page-relative coordinates from now on
- x %= this._pageWidth;
- y %= this._pageHeight;
+ if (this._orientation === Clutter.Orientation.HORIZONTAL)
+ x %= this._pageWidth;
+ else
+ y %= this._pageHeight;
if (x < leftEmptySpace || y < topEmptySpace)
return [null, DragLocation.INVALID];